#include "vector"
#include "ObObject.h"
#include "D3DUtil.h"
#include "string"
#include "TreeClipping.h"

class TreeNode{
public:
	TreeNode();
	~TreeNode();

	std::string id;
	int mBaseName;
	RECT pos;
	TreeNode* northWest;
	TreeNode* northEast;
	TreeNode* southWest;
	TreeNode* southEast;
	std::vector<ObObject*> listObjects;

	void addNode(std::vector<int> param, std::vector<ObObject*> realList, int baseName);
	void clipCamera(RECT camAABB, std::vector<ObObject*>& ob);
	std::string getSaveString();
private:
	static void initNode(TreeNode* node, std::vector<int> param, std::vector<ObObject*> list, int baseName);
};